package pres.wchen.bussiness.service.impl;

import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import pres.wchen.bussiness.cor.model.BaseModel;
import pres.wchen.bussiness.vo.SysRoleVO;
import pres.wchen.bussiness.vo.SysUsersRolesVO;
import pres.wchen.bussiness.service.SysUsersRolesService;
import pres.wchen.bussiness.dao.SysUsersRolesMapper;


/**
 * @作者： wchen
 * @描述： 用户角色关联表
 * @创建时间： 2018/02/17 15:02:18
 * @版本：Copyright 2018, Inc. All Rights Reserved.
 * @修改信息：
 */
@Service("sysUsersRolesService")
public class SysUsersRolesServiceImpl extends BaseService implements SysUsersRolesService {
	@Autowired
	private SysUsersRolesMapper sysUsersRolesMapper;


	/**
     *  @描述: 用户角色关联表新增
     *  @参数： [sysUsersRolesVO]
     *  @返回值： java.Lang.Integer
     *  @创建人: wchen
     *  @创建时间: 2018/2/17
     *  @修改人和其它信息:
     */
	@Override
	public Integer insertByBatch(Map map) {
        return sysUsersRolesMapper.insertByBatch(map);
	}


	/**
     *  @描述: 用户角色关联表删除
     *  @参数： [id]
     *  @返回值： java.Lang.Integer
     *  @创建人: wchen
     *  @创建时间: 2018/2/17
     *  @修改人和其它信息:
     */
	@Override
	public Integer delete(Long id) {
		Map conditionMap = new HashMap();
        conditionMap.put("userId", id);
		return sysUsersRolesMapper.delete(conditionMap);
	}


	/**
     *  @描述: 用户角色关联表列表
     *  @参数： [map]
     *  @返回值： java.util.Map
     *  @创建人: wchen
     *  @创建时间: 2018/2/17
     *  @修改人和其它信息:
     */
	@Override
	public BaseModel list(Map map) {
		super.pagingList(map);
        List<SysRoleVO> list = sysUsersRolesMapper.list(map);
        return super.doPagingResult(list);
	}


	/**
	 * @param map
	 * @描述: 查询用户的角色列表(分配角色列表时用)
	 * @参数： [map]
	 * @返回值： java.util.List
	 * @创建人: wchen
	 * @创建时间: 2018/2/17
	 * @修改人和其它信息:
	 */
	@Override
	public BaseModel chooseUserRoleList(Map map) {
		super.pagingList(map);
		List<Map> list = sysUsersRolesMapper.chooseUserRoleList(map);
		return super.doPagingResult(list);
	}
}
